package cn.topevery.garden.entity.po;

import cn.topevery.garden.framework.base.BaseEntity;
import hw.topevery.framework.annotation.DbTable;
import hw.topevery.framework.annotation.DbTableField;
import hw.topevery.framework.enums.DbTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 
 *
 * @author code-generate
 * @date 2021-08-06
 */
@Data
@DbTable(tableName = "t_car")
public class Car extends BaseEntity {
        /**
     * 车牌号
     */
    @DbTableField(columnName = "c_car_num", dbType = DbTypeEnum.VARCHAR)
    public String carNum ;

    public String name ;

    /**
     * 车辆类型ID 对应t_car_class.c_id
     */
    @DbTableField(columnName = "c_car_id", dbType = DbTypeEnum.VARCHAR)
    public String carId ;

    /**
     * 车辆类型ID 对应t_car_class.c_id
     */
    @DbTableField(columnName = "c_type", dbType = DbTypeEnum.INTEGER)
    public Integer type ;

    /**
     * 车辆类型
     */
    @DbTableField(columnName = "c_type_name", dbType = DbTypeEnum.VARCHAR)
    public String typeName ;

    /**
     * 车牌颜色Id  对应t_sys_dict.c_id
     */
    @DbTableField(columnName = "c_car_color_id", dbType = DbTypeEnum.INTEGER)
    public Integer carColorId ;

    /**
     * 车牌颜色
     */
    @DbTableField(columnName = "c_car_color_name", dbType = DbTypeEnum.VARCHAR)
    public String carColorName ;

    /**
     * 车辆颜色
     */
    @DbTableField(columnName = "c_color", dbType = DbTypeEnum.VARCHAR)
    public String color ;

    /**
     * 发动机号
     */
    @DbTableField(columnName = "c_engine_num", dbType = DbTypeEnum.VARCHAR)
    public String engineNum ;

    /**
     * 权属类型
     */
    @DbTableField(columnName = "c_own_type", dbType = DbTypeEnum.INTEGER)
    public Integer ownType ;

    /**
     * 行驶证编号
     */
    @DbTableField(columnName = "c_license_code", dbType = DbTypeEnum.VARCHAR)
    public String licenseCode ;

    /**
     * 行驶证到期时间
     */
    @DbTableField(columnName = "c_license_date", dbType = DbTypeEnum.TIMESTAMP)
    public LocalDateTime licenseDate ;

    /**
     * 所在项目组ID t_company_team.c_id
     */
    @DbTableField(columnName = "c_team_id", dbType = DbTypeEnum.INTEGER)
    public Integer teamId ;

    /**
     * t_company.c_id
     */
    @DbTableField(columnName = "c_company_id", dbType = DbTypeEnum.INTEGER)
    public Integer companyId ;
    public String companyName;
    /**
     * -1：停用，0：闲置，1：审核中，2：在用
     */
    @DbTableField(columnName = "c_work_state", dbType = DbTypeEnum.INTEGER)
    public Integer workState ;

    /**
     * 工作状态
     */
    @DbTableField(columnName = "c_work_state_desc", dbType = DbTypeEnum.VARCHAR)
    public String workStateDesc ;

    /**
     * 行驶证附件ID
     */
    @DbTableField(columnName = "c_file_id", dbType = DbTypeEnum.VARCHAR)
    public String fileId ;

    /**
     * 车辆头像
     */
    @DbTableField(columnName = "c_photo_id", dbType = DbTypeEnum.VARCHAR)
    public String photoId ;



    /**
     * 片区Id  t_extent.c_id
     */
    @DbTableField(columnName = "c_extent_id", dbType = DbTypeEnum.INTEGER)
    public Integer extentId ;

    /**
     * 片区
     */
    @DbTableField(columnName = "c_extent_name", dbType = DbTypeEnum.VARCHAR)
    public String extentName ;

    /**
     * 公园Id t_park.c_id
     */
    @DbTableField(columnName = "c_park_id", dbType = DbTypeEnum.INTEGER)
    public Integer parkId ;

    /**
     * 公园
     */
    @DbTableField(columnName = "c_park_name", dbType = DbTypeEnum.VARCHAR)
    public String parkName ;

    /**
     * 标段Id
     */
    @DbTableField(columnName = "c_section_id", dbType = DbTypeEnum.INTEGER)
    public Integer sectionId ;

    /**
     * 标段名称
     */
    @DbTableField(columnName = "c_section_name", dbType = DbTypeEnum.VARCHAR)
    public String sectionName ;

    /**
     * 任务ID
     */
    @DbTableField(columnName = "c_task_id", dbType = DbTypeEnum.INTEGER)
    public Integer taskId ;

    /**
     * 班次ID
     */
    @DbTableField(columnName = "c_shift_id", dbType = DbTypeEnum.INTEGER)
    public Integer shiftId ;

    @ApiModelProperty(value = "任务名称")
    private String taskName;

    @ApiModelProperty(value = "班次名称")
    private String shiftName;

    @ApiModelProperty(value = "班次名称")
    public String extentNameT ;

    /**
     * 数量
     */
    public String totalNumber ;

    @ApiModelProperty(value = "文件")
    private List<CarFile> fileList;
}
